Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Chat system



  What the Heck are Algebraic Data Types? ( for Programmers )

This post is meant to be a gentle introduction to Algebraic Data Types. Some of you may be asking why you should learn Algebraic Data Types and how will they change your world?  I am not going to answer that, but suffice it to say that Algebraic Data Types are the underpinning of the type systems to the ML derived languages, Haskell and OCaml included, and their construction and properties allow for the power (and inference) that accompanies these type systems.  They are cropping...

   Algebraic Data Type,Set,Operator,Programmer     2011-12-30 08:31:43

  Programming Achievements: How to Level Up as a Developer

How does a good developer become a great developer?Forget greatness for a moment: How does a decent developer become a good developer?There is no definitive path from Step 1 to Step n. Heck, it's not even clear what Step n is. And as logically-minded developer types, the lack of a well-defined route can make for a daunting journey from novice to master.I've spent a fair bit of time over the last few years bumping up against this conundrum. What's next? How do I go from being a goo...

   Good developer,Great developer,Comparison,Knowledge,Skill,Platform     2011-11-09 02:12:58

  Signs that you're a bad programmer

1. Inability to reason about codeReasoning about code means being able to follow the execution path ("running the program in your head") while knowing what the goal of the code is.SymptomsThe presence of "voodoo code", or code that has no effect on the goal of the program but is diligently maintained anyway (such as initializing variables that are never used, calling functions that are irrelevant to the goal, producing output that is not used, etc.)Executing idempotent functions multiple times (...

   Sign,Programmer,Characteristics,Knowledge,Skill     2011-10-20 08:56:16

  The 15 Golden Rules of UI design and flow.

Last night a good friend of mine showed me the latest Need for Speed game on the iphone / ipad. Quite an impressive feat of rendering and a relatively good game to boot. However, the front end, wow, a classic case in UI mis-engineering. Loads of stats, pages and pages of bits and pieces to wade through – a classic case of over stimulating the player with lots of decisions they have no business making – stuff that will significantly change their game play experience but being...

   UI design,Game design,Feature     2012-04-05 12:20:18

  Prototypes in JavaScript

Following on from his previous article, David Chisnall explores JavaScript as an example of prototype-based object orientation. In this article, he shows how it's possible to implement more complex object models on top of this simple abstraction.My previous article, Prototypes and Object Orientation, considered the differences between class-based and prototype-based object orientation. In this article, we'll look in a bit more detail at the workings of the JavaScript object model, since it'...

   JavaScript,Prototype,Object oriented,Obj     2011-09-02 11:44:12

  PHP: a fractal of bad design

Preface I’m cranky. I complain about a lot of things. There’s a lot in the world of technology I don’t like, and that’s really to be expected—programming is a hilariously young discipline, and none of us have the slightest clue what we’re doing. Combine with Sturgeon’s Law, and I have a lifetime’s worth of stuff to gripe about. This is not the same. PHP is not merely awkward to use, or ill-suited for what I want, or suboptimal, or...

   PHP,Design,Analysis     2012-04-11 13:46:57

  Decision Trees in C#

Decision trees are simple predictive models which map input attributes to a target value using simple conditional rules. Trees are commonly used in problems whose solutions must be readily understandable or explainable by humans, such as in computer-aided diagnostics and credit analysis. Download source code Download sample applications Download the full Accord.NET Framework Introduction Decision Trees give a direct and intuitive way for obtaining the classification of a new instance f...

   C#,Decision tree     2012-03-23 10:00:56

  Why I Hate Android

Why do I hate Android? It’s definitely one of the questions I get asked most often these days. And most of those that don’t ask probably assume it’s because I’m an iPhone guy. People see negative take after negative take about the operating system and label me as “unreasonable” or “biased” or worse. I should probably explain. Believe it or not, I actually don’t hate Android. That is to say, I don’t hate the concept of Androi...

   Android,Hate,Feature     2012-01-10 07:19:27

  A journey to investigate a goroutine leakage case

In Go, creating goroutines is straightforward, but improper usage may result in a large number of goroutines unable to terminate, leading to resource leakage and memory leaks over time. The key to avoiding goroutine leaks is to manage the lifecycle of goroutines properly. By exporting runtime metrics and utilizing pprof, one can detect and resolve goroutine leakage issues. This post will go through one real case encountered by the author. The author maintains a service that connects to a targe...

   TIMEOUT,SSH,GUIDE,DEBUG,LEAK,GOROUTINE,PPROF,GOLANG     2024-03-16 11:00:23

  What have been Facebook’s greatest technical accomplishments?

To maintain a large website which gets billions of requests er day and keeps very fast response speed is not an easy task. Many big companies are trying best to improve user experience by adopting different techniques. There is a question on Quora which asks "What have been Facebook’s greatest technical accomplishments?". There is a person who worked in Facebook before provided an answer which helps us understanding how Facebook handles huge amount of traffic each day. Here is the answer f...

   Facebook, Design, Efficiency     2013-01-15 07:32:07